﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace KeyCore.Domain.Model
{
    public class Rodzice
    {
        [Key]
        public Guid RodziceId { get; set; }
        public string ImieOjca { get; set; }
        public string NazwiskoOjca { get; set; }
        public string ImieMatki { get; set; }
        public string NazwiskoMatki { get; set; }

        public bool HasValue
        {
            get
            {
                return (ImieOjca != null) 
                    || (ImieMatki != null) 
                    || (NazwiskoOjca != null) 
                    || (NazwiskoMatki != null);
            }
        }
      //  public virtual ICollection<Osoba> Osoba { get; set; }
    }
    public class RodziceConfiguration : EntityTypeConfiguration<Rodzice>
    {
        public RodziceConfiguration()
        {
            HasKey(k => k.RodziceId)
                .Property(p=>p.RodziceId)
                .HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
            Property(p => p.ImieOjca).IsRequired();
            Property(p => p.ImieMatki).IsRequired();
            Property(p => p.NazwiskoOjca).IsRequired();
            Property(p => p.NazwiskoMatki).IsRequired();
        }
    }
}
